Project 3 codes and results for images from 11 to 20.
library(jpeg)
require(stats)
library("imager")
## Loading required package: magrittr
##
## Attaching package: 'imager'
## The following object is masked from 'package:magrittr':
##
## add
## The following objects are masked from 'package:stats':
##
## convolve, spectrum
## The following object is masked from 'package:graphics':
##
## frame
## The following object is masked from 'package:base':
##
## save.image
library(ggplot2)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library("EBImage")
##
## Attaching package: 'EBImage'
## The following objects are masked from 'package:imager':
##
## channel, dilate, display, erode, resize, watershed
library(wvtool)
Image 11
getwd()
## [1] "C:/Users/Sinan/Desktop"
setwd("C:/Users/Sinan/Desktop")
im<- load.image('Fabric11.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.126638
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 12
im<- load.image('Fabric12.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=100, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/4)
K
## [1] 3.811889
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 13
im<- load.image('Fabric13.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.046588
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 14
im<- load.image('Fabric14.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.309555
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 15
im<- load.image('Fabric15.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 4.649098
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 16
im<- load.image('Fabric16.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=10, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 5.45373
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 17
im<- load.image('Fabric17.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=8, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.805396
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 18
im<- load.image('Fabric18.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=18, theta=100, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.695151
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 19
im<- load.image('Fabric19.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=15, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.326541
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)

Image 20
im<- load.image('Fabric20.jpg')
img_g<-grayscale(im)
plot(img_g)

data<-as.data.frame(as.cimg(img_g))[,3]
data<-array(data,dim=c(512,512))
new_image<-data
test <- gabor.filter(x=data,lamda=15, theta=60, bw=10, phi=0, asp=0.3, disp=TRUE)

arr<-test$filtered_img
K<-(max(as.vector(arr))-min(as.vector(arr)))/sqrt(var(as.vector(arr)))
K<-((K-1)/3)
K
## [1] 3.78225
upper<-mean(arr)+K*sqrt(var(as.vector(arr)))
lower<-mean(arr)-K*sqrt(var(as.vector(arr)))
plot(as.vector(arr),type ="p",ylab = "Pixel values",xlab ="Pixels",main = "Control Chart for Pixels")+
abline(h=upper,col="blue") +
abline(h=lower,col="blue") +
abline(h=mean(arr),col="red")

## integer(0)
for(i in c(1:512)){
for (j in c(1:512)) {
if((arr[i,j]<lower) ||(arr[i,j]>upper) ){
new_image[i,j]<-0
}
}
}
pixel_for_dim<- as.data.frame(img_g)
pixel_for_dim[,3]<-as.vector(new_image)
pixels_with_defects<-pixel_for_dim[,3] %>% as.cimg(dim=dim(img_g))
par(mfrow = c(1,2))
plot(1:2, type='n',main = "ORIGINAL IMAGE")
rasterImage(img_g, 1, 1, 2, 2)
plot(1:2, type='n',main = "IMAGE DEFECTS FOUNDED")
rasterImage(pixels_with_defects, 1, 1, 2, 2)
